<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.org/ui">

	<!--			Busqueda de Promociones			-->


	<div class="divPanelGridFiltro" align="center">
		<h:panelGroup id="plgFiltroPromociones">
			<h:panelGrid columns="4">
				<h:outputLabel>Tipo promoci&#243;n:</h:outputLabel>
				<p:selectOneMenu
					value="#{promocionesController.promocion.tipoPromocion}">
					<f:converter binding="#{tipoPromocionConverter}"></f:converter>
					<f:selectItems var="tipoPromo"
						value="#{promocionController.listaTipoPromocion}"
						itemLabel="#{tipoPromo.nombre}" itemValue="#{tipoPromo}" />
				</p:selectOneMenu>
				<p:spacer width="10" />
				<p:commandButton value="Buscar" styleClass="butonSmall"
					action="#{promocionesController.buscarPromocionesVigentes}"
					process="@this, plgFiltroPromociones"
					update="panelResultadosPromociones" />
			</h:panelGrid>
		</h:panelGroup>
	</div>
	<p:spacer height="25" />
	<div class="data-table-ventas">
		<h:panelGroup id="panelResultadosPromociones">
			<p:dataTable id="dtPromociones" var="promo"
				value="#{promocionesController.listaPromocionesVigentes}"
				rowKey="#{promo.idPromocion}"
				emptyMessage=""
				paginator="true" paginatorPosition="top" rows="10"
				paginatorTemplate="{FirstPageLink} {PreviousPageLink} {CurrentPageReport} {NextPageLink} {LastPageLink}"
				currentPageReportTemplate="{currentPage} de {totalPages}">

				<p:column headerText="Material" sortBy="#{promo.material}" 
					sortFunction="#{ordenarDatatable.ordernar}">
					<h:outputText value="#{promo.material}" />
				</p:column>

				<p:column headerText="Descripci&#243;n" sortBy="#{promo.nombre}"
					sortFunction="#{ordenarDatatable.ordernar}">
					<h:outputText value="#{promo.nombre}" />
				</p:column>

				<p:column headerText="Precio (incluye IGV)" sortBy="#{promo.precio}"
					style="text-align: right;">
					<h:outputText value="#{promo.precio}" />
				</p:column>

				<p:column headerText="Tipo moneda" sortBy="#{promo.moneda.nombre}"
					sortFunction="#{ordenarDatatable.ordernar}">
					<h:outputText value="#{promo.moneda.nombre}" />
				</p:column>

				<p:column  headerText="Inicio vigencia" sortBy="#{promo.fechaInicio}"
					style="text-align: center; width:110px;">

					<h:outputText value="#{promo.fechaInicio}">
						<f:convertDateTime pattern="dd/MM/yyyy" />
					</h:outputText>
				</p:column>

				<p:column headerText="Fin vigencia" sortBy="#{promo.fechaFin}"
					style="text-align: center; width:100px;">
					<h:outputText value="#{promo.fechaFin}">
						<f:convertDateTime pattern="dd/MM/yyyy" />
					</h:outputText>

				</p:column>

				<p:column styleClass="btn-DataTable-Icon-Centrado">
					<p:commandLink action="#{promocionesController.detallePromocion}"
						process=":tabGeneral:formPromociones:panelResultadosPromociones"
						oncomplete="wvDlgPromocionDetalle.show();zoomTodoImagenPromocion('contenedor-imagen-promocion', 'image-promocion');"
						update=":tabGeneral:formPromociones:panelDetallePromocion">
						<h:graphicImage library="images" name="detalle.png"
							styleClass="icon-small" alt="Ver detalle" title="Ver detalle" />
						<f:setPropertyActionListener value="#{promo}"
							target="#{promocionesController.promocionDetalle}" />
					</p:commandLink>
				</p:column>

				<p:column styleClass="btn-DataTable-Icon-Centrado">
					<p:commandLink
						action="#{promocionesController.seleccionarPromocion}"
						process=":tabGeneral:formPromociones:panelResultadosPromociones"
						oncomplete="wvDlgPromocionCotizacion.show();limpiarFormularioSoloInput('xxx');"
						update=":tabGeneral:formPromociones:panelSolicitarCotizacionPromocion">
						<h:graphicImage library="images" name="carrito.png"
							styleClass="icon-small" alt="Solicitar"
							title="A&#241;adir al carrito de compras" />
						<f:setPropertyActionListener value="#{promo}"
							target="#{promocionesController.promocionASolicitar}" />
					</p:commandLink>
				</p:column>
				<f:facet name="footer">
					<div class="pie-cantidad-resultados">
						<h:outputText
							rendered="#{promocionesController.listaPromocionesVigentes.size()>1}"
							value="Se encontraron #{promocionesController.listaPromocionesVigentes.size()} promociones." />
						<h:outputText
							rendered="#{promocionesController.listaPromocionesVigentes.size()==1}"
							value="Se encontr&#243; #{promocionesController.listaPromocionesVigentes.size()} promoci&#243;n." />
						<h:outputText
							rendered="#{promocionesController.listaPromocionesVigentes.size()==0}"
							value="No se encontraron promociones." />
					</div>
				</f:facet>
			</p:dataTable>
		</h:panelGroup>
	</div>


	<!--			Dialog Detalle Promocion			-->

	<p:dialog id="dlgPromocionDetalle" widgetVar="wvDlgPromocionDetalle"
		header="Detalle promoci&#243;n" draggable="false" resizable="false"
		modal="true" width="960">
		<h:panelGroup id="panelDetallePromocion">
			<div>
				<div class="bloque">
					<div class="izquierda  gestion-repuestos-imagenes">
						<div class="margen-contenido">
							<div class="nombreSubBloque data">
								<h:outputLabel value="Repuestos de la promoci&#243;n" />
							</div>

							<p:spacer height="15"></p:spacer>
							<div class="bloque">
								<h:panelGroup id="panelRepuestosPromocion">
									<p:dataTable var="promocionRepuesto"
										value="#{promocionesController.listaRepuestosPromocionElegida}"
										rowKey="#{promocionRepuesto.keyListado}"
										emptyMessage="La promocion no tiene repuestos asignados"
										paginatorTemplate="{FirstPageLink} {PreviousPageLink} {CurrentPageReport} {NextPageLink} {LastPageLink}"
										paginator="true" paginatorPosition="top" rows="5"
										currentPageReportTemplate="{currentPage} de {totalPages}">

										<p:column headerText="Descripci&#243;n"
											styleClass="centrar-contenido"
											sortBy="#{promocionRepuesto.repuesto.nombre}">
											<h:outputText value="#{promocionRepuesto.repuesto.nombre}" />
										</p:column>
										<p:column headerText="Cantidad" style="text-align: right;" 
											sortBy="#{promocionRepuesto.cantidadReferencial}">
											<h:outputText
												value="#{promocionRepuesto.cantidadReferencial}"  />
										</p:column>

									</p:dataTable>
								</h:panelGroup>
							</div>
						</div>
					</div>
					<div class="derecha gestion-repuestos-imagenes">
						<div class="margen-contenido">
							<h:panelGroup id="panelImagenScroll">
								<div id="contenedor-imagen-scroll"
									class="contenedor-imagen-promocion" align="center">
									<p:graphicImage id="imagen-scroll"
										value="/imagen/servidor/?nombreArchivo=#{promocionesController.nombreImagenPromocion}&#38;tipo=promocion"
										styleClass="image-promocion " />
								</div>
							</h:panelGroup>
						</div>
					</div>
				</div>
			</div>
		</h:panelGroup>
	</p:dialog>

	<!--			Dialog Solicitar Cotizacion			-->

	<p:dialog id="dlgPromocionCotizacion"
		widgetVar="wvDlgPromocionCotizacion"
		header="A&#241;adir al carrito de compras" draggable="false"
		resizable="false" modal="true">
		<div class="panel-general-popup">
			<h:panelGroup id="panelSolicitarCotizacionPromocion">
				<div class="divPanelGridFiltro">
					<div class="nombreSubBloque">
						<h:outputLabel value="Datos de la promoci&#243;n " />
					</div>
					<div align="center">
						<h:panelGrid id="xxx" columns="2">
							<h:outputLabel value="Material:" />
							<h:outputText styleClass="texto-general" value="#{promocionesController.promocionASolicitar.material}" />
							
							<h:outputLabel value="Descripci&#243;n:" />
							<h:outputText styleClass="texto-general" value="#{promocionesController.promocionASolicitar.nombre}" />
							
							<h:outputLabel value="Moneda:" />
							<h:outputText styleClass="texto-general" value="#{promocionesController.promocionASolicitar.moneda.nombre}" />
							
							<h:outputLabel value="Precio:" />
							<h:outputText styleClass="texto-general" value="#{promocionesController.promocionASolicitar.precio}" />
							

							<h:outputLabel value="Cantidad:" />
							<p:inputText id="cantidad" required="true" maxlength="10"
								value="#{promocionesController.cantidadSolicitada}"
								requiredMessage="Cantidad: Requerido.">
								<f:validator validatorId="numeroValidator" />
								<f:validator validatorId="numeroPositivoValidator" />
								<f:attribute name="campo" value="Cantidad" />
								<p:ajax update="msgCantidad" />
							</p:inputText>

						</h:panelGrid>
					</div>
				</div>
				<div class="panel-botones" align="center">
					<p:commandButton value="Guardar" ajax="true"
						styleClass="butonSmall"
						action="#{promocionesController.guardarCotizacion}"
						update="panelMessagesCotizacion,:growl,:tabGeneral:formCarritoCompras:plgDt"
						process="@this,panelSolicitarCotizacionPromocion"
						oncomplete="ocultarDialogSiOperacionEsCorrecta(xhr, status, args,wvDlgPromocionCotizacion);" />
					<p:spacer width="10" />
					<p:commandButton value="Cancelar" ajax="true" immediate="true"
						styleClass="butonSmall" onclick="wvDlgPromocionCotizacion.hide()" />
				</div>
				<div class="panelMessages">
					<h:panelGroup id="panelMessagesCotizacion">
						<p:message id="msgCantidad" for="cantidad" />
					</h:panelGroup>
				</div>
			</h:panelGroup>
		</div>
	</p:dialog>

</ui:composition>